#!/usr/bin/perl
# A simple script for making releases of the pciutils
# (c) 2003--2011 Martin Mares <mj@ucw.cz>

use strict;
use warnings;
require "maint/release.pm";

# Check API version
my $apiver = "???";
open X, "lib/pci.h" or die;
while (<X>) {
	/^#define PCI_LIB_VERSION 0x(.{6})$/ and $apiver = $1;
}
print "API version is $apiver ... <confirm> "; <STDIN>;

## print "Updating public GIT tree\n";
## `git push --tags public`; die if $?;

my $r = new UCW::Release("pciutils");
my $ver = $r->GetVersionFromFile("Makefile", "VERSION=(.*)");
$r->GetVersionsFromChangelog("ChangeLog", "Released as (.*)\.");
push @{$r->{"rules"}}, '^win32/config.h' => 's';
if ($ver =~ /-/) {
	$r->{"ALPHADIR"} = "alpha/";
	$r->{"conditions"}->{"ALPHA_VERSION"} = 1;
} else {
	$r->{"ALPHADIR"} = "";
	$r->{"conditions"}->{"ALPHA_VERSION"} = -1;
}
push @{$r->{"uploads"}}, {
	"url" => "scp://atrey.karlin.mff.cuni.cz/~ftp/pub/linux/pci/" . $r->{"ALPHADIR"}
##	},{
##	"url" => "scp://master.kernel.org/pub/software/utils/pciutils/" . $r->{"ALPHADIR"}
	};
push @{$r->{"uploads"}}, {
	"url" => "ftp://metalab.unc.edu/incoming/linux/",
	"filter" => '(\.tar\.gz|\.lsm)$'
	} if $r->{"ALPHADIR"} eq "";
$r->ParseOptions;
$r->InitDist("maint/dist");
my $reldir = $r->GenPackage;
$r->GenFile("README");
$r->GenFile("pciutils.lsm");
$r->Dispatch;
if ($r->{"do_upload"}) {
	print "Uploading pci.ids to Jabberwock\n";
	`scp -C pci.ids pciids\@jabberwock.ucw.cz:05-pciutils.new`; die if $?;
	`ssh pciids\@jabberwock.ucw.cz mv 05-pciutils.new origs/05-pciutils`; die if $?;
}
